// 模拟的content-desc数组，用于测试
const mockContentDescs = [
    '暂停',
    '作者 小红薯67244BD6',
    '爱他美领熠，号称乳黄金，难怪这么实惠，所以我给他选了爱他美最好的奶粉领熠，物美价廉是正品',
    '分享',
    '点赞1',
    '收藏',
    '评论',
    '头像,小红薯67244BD6',
    '261关注',
    '10.4万粉丝',
    '95获赞与收藏',
    '发消息'
  ];
  
  const mockContentDescs2 = [
    '图片,第1张,共1张,双指左划或右划即可查看更多内容',
    '作者,夜晚^O^星光',
    '分享',
    '评论框',
    '点赞 10.3万',
    '收藏 0',
    '评论 1.2万'
  ];
  
  const mockContentDescs3 = [
    '暂停',
    '返回',
    '作者 琳琳',
    '纯奶粉喂养宝宝，我家喝的爱他美领熠，领熠添加了益生菌和益生元，对宝宝肠道非常友好，... 展开全文',
    '纯奶粉喂养宝宝，我家喝的爱他美领熠，领熠添加了益生菌和益生元，对宝宝肠道非常友好，还有14种维生素和12种矿物质，真的很适合纯奶粉喂养的宝宝！07-20 天津笔记中的地点信息由AI自动捕捉',
    '分享',
    '点赞2',
    '收藏',
    '评论'
  ];
  
  /**
   * 从内容描述中提取文本内容和时间
   * @param {Array} contentDescs 内容描述数组
   * @returns {Object} 包含提取的文本内容和时间的对象
   */
  export function extractContentAndTime(contentDescs: string[]) {
    // 查找可能包含内容和时间的描述项
    // 规则1：长度大于20且不是明显的操作项（如分享、点赞等）
    // 规则2：通常位于数组的第3或第4个位置
    const candidatePositions = [2, 3, 4];
    let contentEntry = '';
    
    for (const pos of candidatePositions) {
      if (contentDescs[pos] && contentDescs[pos].length > 20) {
        contentEntry = contentDescs[pos];
        break;
      }
    }
  
    if (!contentEntry) {
      return {
        content: '',
        time: ''
      };
    }
  
    // 提取时间（格式如 07-20）
    let time = '';
    const timeMatch = contentEntry.match(/(\d{1,2}-\d{1,2})/);
    if (timeMatch && timeMatch[1]) {
      time = timeMatch[1];
    }
  
    // 提取内容（去除时间部分）
    let content = contentEntry;
    if (time) {
      content = contentEntry.replace(time, '').trim();
      // 去除可能的地点信息
      const locationIndex = content.lastIndexOf(' ');
      if (locationIndex !== -1) {
        content = content.substring(0, locationIndex).trim();
      }
    }
  
    return {
      content: content,
      time: time
    };
  }
  
  /**
   * 测试函数
   */
  function testExtraction() {
    console.log('--- 测试提取文本内容和时间 ---');
    
    // 测试第一个数据集
    const result1 = extractContentAndTime(mockContentDescs);
    console.log('测试数据集1结果:', result1);
    
    // 测试第二个数据集
    const result2 = extractContentAndTime(mockContentDescs2);
    console.log('测试数据集2结果:', result2);
    
    // 测试第三个数据集（包含时间和内容的示例）
    const result3 = extractContentAndTime(mockContentDescs3);
    console.log('测试数据集3结果:', result3);
    
    console.log('--- 测试结束 ---');
  }
  
  // 执行测试
  testExtraction();
  